package daoBDDImpl;

import java.util.List;

import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

import utils.HibernateUtil;
import bean.CompositionEquipe;
import bean.Equipe;
import bean.Personne;
import dao.CompositionEquipeDao;

public class CompositionEquipeDaoBDDImpl  extends HibernateDaoSupport implements CompositionEquipeDao{

	public CompositionEquipeDaoBDDImpl() {
		super();
		setSessionFactory(HibernateUtil.getSessionFactory());
	}

	@Override
	public CompositionEquipe get(long id) {
		return getHibernateTemplate().get(CompositionEquipe.class, id);
	}

	@SuppressWarnings("unchecked")
	@Override
	public List<CompositionEquipe> getAllByEquipe(Equipe equipe) {
		return getHibernateTemplate().findByNamedQueryAndNamedParam("getAllByEquipe", "equipe", equipe);
	}

	@SuppressWarnings("unchecked")
	@Override
	public List<CompositionEquipe> getAllByPersonne(Personne personne) {
		return getHibernateTemplate().findByNamedQueryAndNamedParam("getAllByPersonne", "personne", personne);
	}

	@Override
	public void set(CompositionEquipe compositionEquipe) {
		getHibernateTemplate().save(compositionEquipe);
	}

	@Override
	public void del(CompositionEquipe compositionEquipe) {
		getHibernateTemplate().delete(compositionEquipe);
	}

	@SuppressWarnings("unchecked")
	@Override
	public List<CompositionEquipe> getAll() {
		return getHibernateTemplate().findByNamedQuery("getAllCompositionEquipe");
	}
	
}
